package com.syyo.gulimall.member.service;

import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.service.IService;
import com.syyo.common.vo.MemberVo;
import com.syyo.gulimall.member.domain.entity.MemberEntity;
import com.syyo.gulimall.member.domain.req.MemberReq;
import com.syyo.gulimall.member.domain.vo.MemberLoginVo;
import com.syyo.gulimall.member.domain.vo.MemberRegistVo;
import com.syyo.gulimall.member.domain.vo.SocialUser;

import java.util.List;

/**
 * 会员
 *
 * @author syyo
 * @email syyo@gmail.com
 * @date 2021-01-20 09:52:10
 */
public interface MemberService extends IService<MemberEntity> {

    /**
     * 新增
     */
    int add(MemberReq req);

    /**
     * 删除
     */
    int del(Integer id);

    /**
     * 编辑
     */
    int edit(MemberReq req);

    /**
     * 详情
     */
    MemberEntity findOne(Integer id);

    /**
     * 列表
     */
    IPage<MemberEntity> findPage(Integer pageNum, Integer pageSize, MemberReq req);

    List<MemberEntity> findAll(MemberReq req);

    int regist(MemberRegistVo req);

    MemberEntity login(MemberLoginVo req);

    MemberVo authlogin(SocialUser req);
}

